iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 26
0
Security

CTF30系列 第 26 篇

CTF ?: 工具介紹 - qira

  • 分享至 

  • xImage
  •  

qira

qira 是一個 timeless debugger 。

timeless debugger?

qira 的全名是 QEMU Interactive Runtime Analyzer。

如其名,qira 背後其實是用 QEMU 來執行程式。與一般的 debugger 不同的是,它可以做到 無視時間 (timeless debugger)。
一般的 debugger 是只能往後執行的,所以在 rr 等工具出來之前,就只能很痛苦的執行到程式的某位置,然後撞斷點,開始 debug (或拆程式)。

有 rr 的狀況下,就是:
(官網上的例子)

$ rr record /your/application --args
...
FAIL: oh no!

The entire execution, including the failure, was saved to disk. That recording can now be debugged.

$ rr replay
GNU gdb (GDB) ...
...
0x4cee2050 in _start () from /lib/ld-linux.so.2
(gdb)

rr 是指 record-replay。但可惜的是,它不能倒退嚕。

倒退嚕的 debugger

qira 之所以可以倒退嚕,是因為背後使用 qemu 的機制,在執行時紀錄程式的動向。可以參考 Geohot 在 USENIX 2016 上講的內容。
USENIX Engima 2016 - Timeless Debugging

又因為使用 qemu 的關係,所以可以支持 x86/arm/mips 等平臺。

參考資訊

Timeless Debugging of Complex Software | Ret2 Systems Blog


上一篇
CTF 15: auth3ntication (Web, BSides Delhi CTF 2018)
下一篇
CTF 16: MyFileUploader (Web, noxCTF 2018)
系列文
CTF30 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言